﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using DAL.DBManagers;

public partial class UserAccount : System.Web.UI.Page
{
    Guid UserID = Guid.Empty;
    UsersManager manager = new UsersManager();
    DAL.User singleUser;
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Guid.TryParse(Request.QueryString["id"], out UserID))
        {
            singleUser = manager.Single(u => u.UserID == UserID);
            if (singleUser == null)
            {
                Response.Redirect("default.aspx");
            }
        }
        else
        {
            Response.Redirect("default.aspx");
        }
    }
    protected void btnSubmit_Click(object sender, EventArgs e)
    {
        try
        {
            if (HelperService.GetMd5Hash(txtOldPassword.Text) == singleUser.Password)
            {
                if (txtNewPassword.Text == txtNewPasswordRep.Text)
                {
                    singleUser.Password = HelperService.GetMd5Hash(txtNewPassword.Text);
                    manager.SaveChanges();
                    lblStatus.Text = "პაროლი შეცვლილია!";
                    lblStatus.ForeColor = System.Drawing.Color.Green;
                }
                else
                {
                    throw new Exception("ახალი პაროლები არ ემთხვევა ერთმანეთს!");
                }
            }
            else
            {
                throw new Exception("ძველი პაროლი არასწორია!");
            }
        }
        catch (Exception ex)
        {
            //TODO log ex
            lblStatus.Text = ex.Message;
            lblStatus.ForeColor = System.Drawing.Color.Red;
        }
    }
}